import http from 'http';

// 服务器启动并监听请求
export function start(requestHandler) {
  const server = http.createServer((req, res) => {
    let body = '';

    req.on('data', chunk => {
      body += chunk;
    });

    req.on('end', () => {
    //  console.log('接收到请求数据:', body);

      let parsedData;
      try {
        // 尝试将请求数据解析为 JSON
        parsedData = JSON.parse(body);
      } catch (error) {
        // 如果解析失败，返回错误消息
        console.error('请求数据不是有效的 JSON 格式');
        res.writeHead(400, { 'Content-Type': 'application/json' });
        return res.end(JSON.stringify({ message: '请求数据不是有效的 JSON 格式' }));
      }

      // 如果是有效的 JSON，调用 requestHandler 处理数据
      requestHandler(parsedData);

      // 返回成功响应
      res.writeHead(200, { 'Content-Type': 'application/json' });
      res.end(JSON.stringify({ message: '请求已接收' }));
    });
  });

  server.listen(3000, () => {
    console.log('服务器正在运行，监听端口 \nhttp://localhost:3000');
    console.log(`\n-------------------------`);
  });
}
